1. Field of Art
The disclosure generally relates to the field of video compression, and more specifically to the selection and coding of spatial prediction mode information for the compression of video files.
2. Description of the Related Art
The popularity of high-resolution displays, faster computing equipment, and high-speed internet connections has given many people the capability to download, store, and view videos on their computing devices. Since video files are typically larger than most other forms of digital multimedia, techniques to reduce the file size of videos are of especially high interest to many entities, such as online content providers and internet service providers who wish to reduce their operating costs. Several techniques exist to compress video files so they can be transferred and stored more efficiently. Many compression methods take advantage of the fact that video files typically contain large amounts of repeated information. For example, a sequence of consecutive frames typically contains similar images, and individual frames may contain large areas of similar image information, such as shadows or blue skies.
Many modern video codecs operate by dividing a video frame into a series of small blocks and using several different techniques (called prediction modes) to predict the content of the block. Each prediction mode generates a predictor, which is a two-dimensional block of data that contains an estimate of the contents of the block. There are two broad categories of prediction modes. Temporal modes (inter prediction modes) use data from blocks in previously decoded frames to predict the contents of a block, while spatial modes (intra prediction modes) use information from blocks in the same frame. Once all predictors have been calculated, the predictor that yields the closest match to the raw data in the block is chosen, and an identifier for the predictor is stored in the bit stream along with a residual that represents the difference between the predictor and the raw data in the block.
As the number of predictors increases, the number of bits needed to identify the prediction mode used for each block also increases. When more bits are needed to identify each prediction mode, the size of the compressed video file might increase, thus reducing the effectiveness of the codec.